package com.ruiben.mall.pojo;

import javax.persistence.Column;
import javax.persistence.Id;
import java.util.List;

public class Attribute {
    @Id
    @Column(name = "attrId")
    private String attrId;

    /**
     * 商品分类id
     */
    @Column(name = "type_id")
    private String typeId;

    /**
     * 属性名称
     */
    @Column(name = "attr_name")
    private String attrName;

    /**
     * 属性值的录入方式（0：手工录入，1：从列表中选择；2：多行文本框）
     */
    @Column(name = "attr_input_type")
    private Short attrInputType;

    /**
     * 属性是否可选(0:唯一属性,1:单选属性，2:复选属性)
     */
    @Column(name = "attr_type")
    private Short attrType;

    /**
     * 排序
     */
    @Column(name = "sort_order")
    private Byte sortOrder;

    @Column(name = "attr_values")
    private String attrValues;


    private List<String> values;

    public List<String> getValues() {
        return values;
    }

    public void setValues(List<String> values) {
        this.values = values;
    }

    private ProductType type;

    public ProductType getType() {
        return type;
    }

    public void setType(ProductType type) {
        this.type = type;
    }

    /**
     * @return id
     */
    public String getId() {
        return attrId;
    }

    /**
     * @param id
     */
    public void setId(String id) {
        this.attrId = id;
    }

    /**
     * 获取商品分类id
     *
     * @return typeId - 商品分类id
     */
    public String getTypeId() {
        return typeId;
    }

    /**
     * 设置商品分类id
     *
     * @param typeId 商品分类id
     */
    public void setTypeId(String typeId) {
        this.typeId = typeId;
    }

    /**
     * 获取属性名称
     *
     * @return attr_name - 属性名称
     */
    public String getAttrName() {
        return attrName;
    }

    /**
     * 设置属性名称
     *
     * @param attrName 属性名称
     */
    public void setAttrName(String attrName) {
        this.attrName = attrName;
    }

    /**
     * 获取属性值的录入方式（0：手工录入，1：从列表中选择；2：多行文本框）
     *
     * @return attr_input_type - 属性值的录入方式（0：手工录入，1：从列表中选择；2：多行文本框）
     */
    public Short getAttrInputType() {
        return attrInputType;
    }

    /**
     * 设置属性值的录入方式（0：手工录入，1：从列表中选择；2：多行文本框）
     *
     * @param attrInputType 属性值的录入方式（0：手工录入，1：从列表中选择；2：多行文本框）
     */
    public void setAttrInputType(Short attrInputType) {
        this.attrInputType = attrInputType;
    }

    /**
     * 获取属性是否可选(0:唯一属性,1:单选属性，2:复选属性)
     *
     * @return attr_type - 属性是否可选(0:唯一属性,1:单选属性，2:复选属性)
     */
    public Short getAttrType() {
        return attrType;
    }

    /**
     * 设置属性是否可选(0:唯一属性,1:单选属性，2:复选属性)
     *
     * @param attrType 属性是否可选(0:唯一属性,1:单选属性，2:复选属性)
     */
    public void setAttrType(Short attrType) {
        this.attrType = attrType;
    }

    /**
     * 获取排序
     *
     * @return sort_order - 排序
     */
    public Byte getSortOrder() {
        return sortOrder;
    }

    /**
     * 设置排序
     *
     * @param sortOrder 排序
     */
    public void setSortOrder(Byte sortOrder) {
        this.sortOrder = sortOrder;
    }

    /**
     * @return attr_values
     */
    public String getAttrValues() {
        return attrValues;
    }

    /**
     * @param attrValues
     */
    public void setAttrValues(String attrValues) {
        this.attrValues = attrValues;
    }
}